/**
 * map, forEach 的相同和不同
 *
 * map和forEach都是Array上的遍历方法，
 * 都有三个参数， 依次分别是 遍历的value值， 当前遍历的下标， 当前遍历的arr数组对象。
 * 都不可以被中断
 *
 *
 * map有返回值， 返回值是里面执行后的数组类型的值
 * forEach没有返回值， 或者返回的是undefined
 *
 */

const arr = [1, 2, 3, 4, 5, 6, 7, 8]

const newArr = arr.map((item, index, arr) => {
  if (item < 6) {
    console.log(item);
    // break
  }
  // return item
});

console.log(newArr);
console.log(arr);

const newArrEach = arr.forEach((item, index, arr) => {
  if (item > 4) {
    console.log(item);
    // break
  }
});
console.log(newArrEach); // 没有返回值， 只有undefined， 返回的值。

for (let index = 0; index < 100; index++) {
  if (index > 20) {
    break;
  }
  console.log("--", index);
}

for (let index = 0; index < 100; index++) {
  if (index > 20) {
    // return;
  }
  console.log("-==-", index);
}

new Array(100).fill(100).forEach((item, index) => {
  if (index > 10) {
    return;
  }
  console.log("x===", index);
});

